/**
 * 
 */
package com.solome.core;

/**
 * 资源加载接口
 * 
 * @author
 * 
 */
public interface ResourceModel<T> {
	/**
	 * 加载资源
	 */
	void load() throws Exception;

	/**
	 * 打印
	 */
	void print();

	/**
	 * 获取资源对象
	 * 
	 * @param resID
	 *            资源不重复ID
	 * @return 资源对象
	 */
	T get(int resID);

	/**
	 * 通过名称获取资源对象，有的工厂未实现
	 * 
	 * @param resName
	 *            资源名称
	 * @return 资源对象
	 */
	T get(String resName);

	/**
	 * 将工厂内的资源打包成对象数组返回
	 * 
	 * @return 资源对象数组
	 */
	T[] asArray();
}
